package com.sfpay.coreplatform.member.service.inner;

import java.util.Map;

import com.sfpay.coreplatform.member.common.enums.MemberType;
import com.sfpay.coreplatform.member.service.exception.MemberServiceException;
import com.sfpay.coreplatform.member.valueobject.dto.EnterpriseMember;
import com.sfpay.coreplatform.member.valueobject.dto.Member;

/**
 * 
 * 
 * 类说明：会员公共辅助类
 *  
 * 
 * <p>
 * 详细描述：
 *   
 * 
 * @author 313717
 *   
 * CreateDate: 2013-4-15
 */
public interface IMemberHelpService 
{
	/**
	 * 
	 *
	 * 方法说明：生成会员号
	 *
	 * @param memberType	会员类型：个人PERSON，企业COMP
	 * @param channelCode	渠道编号
	 * @return
	 */
	public long generateMemberNo(MemberType memberType,String channelCode);
	
	/**
	 * 
	 *
	 * 方法说明：校验会员登入
	 *
	 * @param pwd			密码
	 * @param loginId		登入标示
	 * @param loginType		手机，邮箱，登入名
	 * @param memberType	会员类型
	 * @return
	 */
	public Map<String,Integer> authMemberLogin(String pwd, String mobile,String mail,String loginName,MemberType memberType) 
			throws MemberServiceException;
	
	/**
	 * 
	 *
	 * 方法说明：操作员是否存在
	 *
	 * @param member
	 * @throws MemberServiceException
	 */
	public <T extends Member>  void queryOperatorIsExist(T member) throws MemberServiceException;
	
	/**
	 * 
	 *
	 * 方法说明：企业信息是否已使用
	 *
	 * @param epMemberExt
	 * @throws MemberServiceException
	 */
	public void queryEPMemberIsExist(EnterpriseMember epMemberExt) throws MemberServiceException;
}
